<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // 在Promise中多个then的使用，都会调用吗？ 都调用

        const p = Promise.resolve("ok");
        // 成功的Promise会继续保持成功的状态调用下去。
        p.then(v =>{
            console.log("one");    
        }).then(v =>{
            console.log("two");
        }).then(v =>{
            console.log("three");
        }).then(v =>{
            console.log("four");
        })
        /*
            // 执行结果
            one
            two
            three
            four
        */

        const p2 = Promise.reject("错误");
        p2.catch(e => {  // 第一个catch被调用后默认就返回成功的Promise了，所有后面的catch都没有调用
            console.log("error01");
        }).catch(e => {
            console.log("error02");
        }).catch(e => {
            console.log("error03");
        })
        /*
            // 执行结果
            error01
        */
    </script>
</body>
</html>